home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / biosdos.arc / DOSREF1.CRD < prev    next >
Text File  |  1988-11-30  |  32KB  |  245 lines

  1. SAU
  2.                                                                         |                                                          |
  3.                  1                                                      |  2             ┌────────────────────────────┐            |
  4.                           IBM PC-DOS PROGRAMMER'S                       |                │ INT 20 - PROGRAM TERMINATE │            |
  5.                           QUICK REFERENCE SUMMARY                       |                └────────────────────────────┘            |
  6.                             by DAVID E. POWELL                          |                                                          |
  7.                                                                         |   DESCRIPTION: INT 20 RESTORES THE TERMINATE, CTL-BREAK, |
  8.                              ┌───────────────┐                          |                AND CRITICAL ERROR EXIT ADDRESSES, FLUSHES|
  9.                              │ ERROR RETURNS │                          |                ALL BUFFERS, AND RETURNS TO DOS           |
  10.                              └───────────────┘                          |                                                          |
  11.                                                                         |   INPUT PARMS: CS = ADDRESS OF PROGRAM SEGMENT PREFIX    |
  12.                 OF THE FOLLOWING ERROR CODES, ONLY CODES 1-12 ARE       |                                                          |
  13.                 RETURNED IN AX UPON EXIT FROM INTERRUPT 21 OR 24.       |  OUTPUT PARMS: NONE                                      |
  14.                 THE REST ARE OBTAINED BY ISSUING THE "GET EXTENDED      |                                                          |
  15.                 ERROR" FUNCTION CALL (SEE INT 21, AH=59).               |                                                          |
  16.                                                                         |                                                          |
  17.                 01 - INVALID FUNCTION NUMBER                            |                ┌───────────────────────────┐             |
  18.                 02 - FILE NOT FOUND                                     |                │ INT 21 - FUNCTION REQUEST │             |
  19.                 03 - PATH NOT FOUND                                     |                └───────────────────────────┘             |
  20.                 04 - TOO MANY OPEN FILES (NO HANDLES LEFT)              |                                                          |
  21.                 05 - ACCESS DENIED                                      |   DESCRIPTION: PERFORM A DOS FUNCTION.                   |
  22.                 06 - INVALID HANDLE                                     |                                                          |
  23.                 07 - MEMORY CONTROL BLOCKS DESTROYED                    |   INPUT PARMS: AH = FUNCTION NUMBER. OTHER REGISTERS     |
  24.                 08 - INSUFFICIENT MEMORY                                |                ARE SET AS DESCRIBED BELOW.               |
  25.                 09 - INVALID MEMORY BLOCK ADDRESS                       |                                                          |
  26.                 0A - INVALID ENVIRONMENT                                |  OUTPUT PARMS: IF ERROR ENCOUNTERED, CY IS SET TO 1 AND  |
  27.                 0B - INVALID FORMAT                                     |                AX CONTAINS A RUDIMENTARY ERROR CODE.     |
  28.                 0C - INVALID ACCESS CODE                                |                EXTENDED ERROR INFORMATION MAY BE OBTAINED|
  29.                 0D - INVALID DATA                                       |                BY ISSUING FUNCTION REQUEST 59.           |
  30.                 0E - RESERVED                                           |                                                          |
  31.                 0F - INVALID DRIVE WAS SPECIFIED                        |                                                          |
  32.                 10 - ATTEMPT TO REMOVE THE CURRENT DIRECTORY            |         --------- FUNCTION REQUEST SUMMARY ----------    |
  33.                 11 - NOT SAME DEVICE                                    |                                                          |
  34.                 12 - NO MORE FILES                                      |     00 - PROGRAM TERMINATE                               |
  35.                 13 - ATTEMPT TO WRITE ON A WRITE-PROTECTED DISKETTE     |     01 - WAIT FOR KEYBOARD INPUT                         |
  36.                 14 - UNKNOWN UNIT                                       |     02 - DISPLAY OUTPUT                                  |
  37.                 15 - DRIVE NOT READY                                    |     03 - WAIT FOR AUXILIARY DEVICE INPUT                 |
  38.                 16 - UNKNOWN COMMAND                                    |     04 - AUXILARY OUTPUT                                 |
  39.                 17 - CRC ERROR                                          |     05 - PRINTER OUTPUT                                  |
  40.                 18 - BAD REQUEST STRUCTURE LENGTH                       |     06 - DIRECT CONSOLE I/O                              |
  41.                 19 - SEEK ERROR                                         |     07 - WAIT FOR DIRECT CONSOLE INPUT WITHOUT ECHO      |
  42.                 1A - UNKNOWN MEDIA TYPE                                 |     08 - WAIT FOR CONSOLE INPUT WITHOUT ECHO             |
  43.                 1B - SECTOR NOT FOUND                                   |     09 - PRINT STRING                                    |
  44.                 1C - PRINTER OUT OF PAPER                               |     0A - BUFFERED KEYBOARD INPUT                         |
  45.                 1D - WRITE FAULT                                        |     0B - CHECK STANDARD INPUT STATUS                     |
  46.                 1E - READ FAULT                                         |     0C - CLEAR KEYBOARD BUFFER, INVOKE KEYBOARD FUNCTION |
  47.                 1F - GENERAL FAILURE                                    |     0D - DISK RESET                                      |
  48.                 20 - SHARING VIOLATION                                  |     0E - SELECT DISK                                     |
  49.                 21 - LOCK VIOLATION                                     |     0F - OPEN FILE                                       |
  50.                 22 - INVALID DISK CHANGE                                |     10 - CLOSE FILE                                      |
  51.                 23 - FCB UNAVAILABLE                                    |     11 - SEARCH FOR FIRST ENTRY                          |
  52.                24-4F RESERVED                                           |     12 - SEARCH FOR NEXT ENTRY                           |
  53.                 50 - FILE EXISTS                                        |     13 - DELETE FILE                                     |
  54.                 51 - RESERVED                                           |     14 - SEQUENTIAL READ                                 |
  55.                 52 - CANNOT MAKE                                        |     15 - SEQUENTIAL WRITE                                |
  56.                 53 - FAIL ON INT 24                                     |     16 - CREATE A FILE                                   |
  57.                                                                         |     17 - RENAME FILE                                     |
  58.                       -------- ERROR CLASSES --------                   |     19 - GET CURRENT DEFAULT DRIVE                       |
  59.                                                                         |     1A - SET DISK TRANSFER ADDRESS                       |
  60.                 01 - OUT OF RESOURCE     │ 08 - NOT FOUND               |     1B - GET ALLOCATION TABLE INFORMATION                |
  61.                 02 - TEMPORARY SITUATION │ 09 - BAD FORMAT              |     1C - GET ALLOCATION TABLE INFO FOR SPECIFIC DEVICE   |
  62.                 03 - AUTHORIZATION       │ 0A - LOCKED                  |     21 - RANDOM READ                                     |
  63.                 04 - INTERNAL            │ 0B - MEDIA FAILURE           |     22 - RANDOM WRITE                                    |
  64.                 05 - HARDWARE FAILURE    │ 0C - ALREADY EXISTS          |     23 - GET FILE SIZE                                   |
  65.                 06 - SYSTEM FAILURE      │ 0D - UNKNOWN                 |     24 - SET RELATIVE RECORD FIELD                       |
  66.                 07 - APPLICATION ERROR   │                              |     25 - SET INTERRUPT VECTOR                            |
  67.                                                                         |     26 - CREATE NEW PROGRAM SEGMENT                      |
  68.                                                                         |     27 - RANDOM BLOCK READ                               |
  69.                     --------- ACTION CODES ----------                   |     28 - RANDOM BLOCK WRITE                              |
  70.                                                                         |     29 - PARSE FILENAME                                  |
  71.                 01 - RETRY               │ 05 - IMMEDIATE EXIT          |     2A - GET DATE                                        |
  72.                 02 - DELAY RETRY         │ 06 - IGNORE                  |     2B - SET DATE                                        |
  73.                 03 - RE-ENTER INPUT      │ 07 - USER INTERVENTION       |     2C - GET TIME                                        |
  74.                 04 - ABORT               │                              |     2D - SET TIME                                        |
  75.                                                                         |     2E - SET/RESET VERIFY SWITCH                         |
  76.                                                                         |     2F - GET DISK TRANSFER ADDRESS                       |
  77.                    -------------- LOCUS --------------                  |     30 - GET DOS VERSION NUMBER                          |
  78.                                                                         |     31 - TERMINATE PROCESS AND REMAIN RESIDENT           |
  79.                 01 - UNKNOWN             │ 04 - SERIAL DEVICE           |     33 - GET/SET CTL-BREAK CHECK STATE                   |
  80.                 02 - BLOCK DEVICE        │ 05 - MEMORY                  |     35 - GET VECTOR                                      |
  81.                 03 - RESERVED            │                              |     36 - GET DISK FREE SPACE                             |
  82.                                                                         |     38 - GET/SET COUNTRY DEPENDENT INFORMATION           |
  83.                                                                         |     39 - CREATE SUBDIRECTORY (MKDIR)                     |
  84.                                                                         |     3A - REMOVE SUBDIRECTORY (RMDIR)                     |
  85.                                                                         |     3B - CHANGE CURRENT SUBDIRECTORY (CHDIR)             |
  86.                                                                         |     3C - CREATE A FILE                                   |
  87.                                                                         |     3D - OPEN A FILE                                     |
  88.                                                                         |     3E - CLOSE A FILE HANDLE                             |
  89.                                                                         |     3F - READ FROM A FILE OR DEVICE                      |
  90.                                                                         |     40 - WRITE TO A FILE OR DEVICE                       |
  91.                                                                         |     41 - DELETE A FILE FROM A SPECIFIED SUBDIRECTORY     |
  92.                                                                         |     42 - MOVE FILE READ/WRITE POINTER                    |
  93.                                                                         |     43 - CHANGE FILE MODE                                |
  94.                                                                         |     44 - I/O CONTROL FOR DEVICES                         |
  95.                            ┌──────────────────────────┐                 |     45 - DUPLICATE A FILE HANDLE                         |
  96.                            │ PRE-DEFINED FILE HANDLES │                 |     46 - FORCE A DUPLICATE OF A FILE HANDLE              |
  97.                            └──────────────────────────┘                 |     47 - GET CURRENT DIRECTORY                           |
  98.                                                                         |     48 - ALLOCATE MEMORY BLOCKS                          |
  99.                 0000 - STANDARD INPUT DEVICE - CAN BE REDIRECTED        |     49 - FREE ALLOCATED MEMORY BLOCKS                    |
  100.                 0001 - STANDARD OUTPUT DEVICE - CAN BE REDIRECTED       |     4A - MODIFY ALLOCATED MEMORY BLOCKS                  |
  101.                 0002 - STANDARD ERROR DEVICE - CANNOT BE REDIRECTED     |     4B - LOAD/EXECUTE A PROGRAM                          |
  102.                 0003 - STANDARD AUXILARY DEVICE                         |     4C - TERMINATE A PROCESS                             |
  103.                 0004 - STANDARD PRINTER DEVICE                          |     4D - GET RETURN CODE OF A SUB_PROCESS                |
  104.                                                                         |     4E - FIND FIRST MATCHING FILE                        |
  105.                                                                         |     4F - FIND NEXT MATCHING FILE                         |
  106.                                                                         |     54 - GET VERIFY SETTING                              |
  107.                              ┌───────────────────────┐                  |     56 - RENAME A FILE                                   |
  108.                              │ DOS INTERRUPT SUMMARY │                  |     57 - GET/SET A FILE'S DATE AND TIME                  |
  109.                              └───────────────────────┘                  |     59 - GET EXTENDED ERROR INFORMATION                  |
  110.                                                                         |     5A - CREATE A TEMPORARY FILE                         |
  111.                       20 - PROGRAM TERMINATE                            |     5B - CREATE A NEW FILE                               |
  112.                       21 - FUNCTION REQUEST                             |     5C - LOCK/UNLOCK A FILE'S ACCESS                     |
  113.                       22 - TERMINATE ADDRESS                            |     62 - GET ADDRESS OF PROGRAM SEGMENT PREFIX           |
  114.                       23 - CTL-BREAK EXIT ADDRESS                       |                                                          |
  115.                       24 - CRITICAL ERROR HANDLER ADDRESS               |                                                          |
  116.                       25 - ABSOLUTE DISK READ                           |                                                          |
  117.                       26 - ABSOLUTE DISK WRITE                          |                                                          |
  118.                       27 - TERMINATE BUT STAY RESIDENT                  |                                                          |
  119.                       2F - PRINTER                                      |                                                          |
  120.                                                                         |                                  CONTINUED ON NEXT PANEL |
  121.                                                                         |                                                          |
  122.  
  123.  
  124.                                                                         |  4  INT 21 - FUNCTION REQUEST (CONT.)                    |
  125.                 3  INT 21 - FUNCTION REQUEST (CONT.)                    |                                                          |
  126.                                                                         |  AH = 19 - GET CURRENT DEFAULT DRIVE                     |
  127.                                                                         |        INPUT: NONE                                       |
  128.                AH = 00 - PROGRAM TERMINATE                              |       OUTPUT: AL = CURRENT DEFAULT DRIVE (0=A,1=B,etc.)  |
  129.                    INPUT: NONE                                          |                                                          |
  130.                   OUTPUT: NONE                                          |  AH = 1A - SET DISK TRANSFER ADDRESS                     |
  131.                                                                         |        INPUT: DS:DX = THE NEW DISK TRANSFER ADDRESS      |
  132.                AH = 01 - WAIT FOR KEYBOARD INPUT                        |       OUTPUT: NONE                                       |
  133.                    INPUT: NONE                                          |                                                          |
  134.                   OUTPUT: AL = CHARACTER FROM STANDARD INPUT DEVICE     |  AH = 1B - GET ALLOCATION TABLE INFORMATION              |
  135.                                                                         |        INPUT: NONE                                       |
  136.                AH = 02 - DISPLAY OUTPUT                                 |       OUTPUT: DS:BX = POINTER TO THE BYTE CONTAINING THE |
  137.                    INPUT: DL = ASCII CHARACTER TO OUTPUT                |                       FAT ID BYTE FOR THE DEFAULT DRIVE  |
  138.                   OUTPUT: NONE                                          |               DX = THE NUMBER OF ALLOCATION UNITS        |
  139.                                                                         |               AL = THE NUMBER OF SECTORS/ALLOCATION UNIT |
  140.                AH = 03 - WAIT FOR AUXILIARY DEVICE INPUT                |               CX = THE SIZE OF THE PHYSICAL SECTOR       |
  141.                    INPUT: NONE                                          |                                                          |
  142.                   OUTPUT: AL = CHARACTER FROM THE AUXILIARY DEVICE      |  AH = 1C - GET ALLOCATION TABLE INFO FOR SPECIFIC DEVICE |
  143.                                                                         |        INPUT: DL = DRIVE NUMBER (0 FOR DEFAULT)          |
  144.                AH = 04 - AUXILIARY OUTPUT                               |       OUTPUT: DS:BX = POINTER TO THE BYTE CONTAINING THE |
  145.                    INPUT: DL = CHARACTER TO OUTPUT                      |                       FAT ID BYTE FOR THE REQUESTED DRIVE|
  146.                   OUTPUT: NONE                                          |               DX = THE NUMBER OF ALLOCATION UNITS        |
  147.                                                                         |               AL = THE NUMBER OF SECTORS/ALLOCATION UNIT |
  148.                AH = 05 - PRINTER OUTPUT                                 |               CX = THE SIZE OF THE PHYSICAL SECTOR       |
  149.                    INPUT: DL = CHARACTER TO OUTPUT                      |                                                          |
  150.                   OUTPUT: NONE                                          |  AH = 21 - RANDOM READ                                   |
  151.                                                                         |        INPUT: DS:DX = POINTER TO AN OPENED FCB           |
  152.                AH = 06 - DIRECT CONSOLE I/O                             |       OUTPUT: AL = 00 IF READ WAS SUCCESSFUL             |
  153.                    INPUT: DL = CHARACTER TO OUTPUT IF <> FF             |               AL = 01 IF EOF (NO DATA READ)              |
  154.                           DL = FF IF CONSOLE INPUT REQUEST              |               AL = 02 IF DTA IS TOO SMALL                |
  155.                   OUTPUT: AL = INPUT CHARACTER IF DL = FF               |               AL = 03 IF EOF (PARTIAL RECORD READ)       |
  156.                           ZF = 1 IF DL = FF AND NO CHARACTER IS READY   |                                                          |
  157.                                                                         |  AH = 22 - RANDOM WRITE                                  |
  158.                AH = 07 - WAIT FOR DIRECT CONSOLE INPUT WITHOUT ECHO     |        INPUT: DS:DX = POINTER TO AN OPENED FCB           |
  159.                    INPUT: NONE                                          |       OUTPUT: AL = 00 IF WRITE WAS SUCCESSFUL            |
  160.                   OUTPUT: AL = CHARACTER FROM STANDARD INPUT DEVICE     |               AL = 01 IF DISKETTE IS FULL                |
  161.                                                                         |               AL = 02 IF DTA IS TOO SMALL                |
  162.                AH = 08 - WAIT FOR CONSOLE INPUT WITHOUT ECHO            |                                                          |
  163.                    INPUT: NONE                                          |  AH = 23 - GET FILE SIZE                                 |
  164.                   OUTPUT: AL = CHARACTER FROM STANDARD INPUT DEVICE     |        INPUT: DS:DX = POINTER TO AN UNOPENED FCB         |
  165.                                                                         |       OUTPUT: AL = 00 IF THE DIRECTORY ENTRY IS FOUND    |
  166.                AH = 09 - PRINT STRING                                   |               AL = FF IF THE DIRECTORY ENTRY IS NOT FOUND|
  167.                    INPUT: DS:DX = POINTER TO STRING ENDING IN "$"       |                                                          |
  168.                   OUTPUT: NONE                                          |  AH = 24 - SET RELATIVE RECORD FIELD                     |
  169.                                                                         |        INPUT: DS:DX = POINTER TO AN OPENED FCB           |
  170.                AH = 0A - BUFFERED KEYBOARD INPUT                        |       OUTPUT: NONE                                       |
  171.                    INPUT: DS:DX = POINTER TO INPUT BUFFER:              |                                                          |
  172.                           ┌─┬─┬──────────  ┐                            |  AH = 25 - SET INTERRUPT VECTOR                          |
  173.                           │1│2│ BUFFER  ...│                            |        INPUT: DS:DX = ADDRESS OF INTERRUPT HANDLER       |
  174.                           └─┴─┴──────────  ┘                            |               AL = INTERRUPT NUMBER                      |
  175.                            │ │     │                                    |       OUTPUT: NONE                                       |
  176.                            │ │     └──────── PLACE FOR INPUT CHARS      |                                                          |
  177.                            │ └────────────── NUMBER OF CHARS IN BUFFER  |  AH = 26 - CREATE A NEW PROGRAM SEGMENT                  |
  178.                            └──────────────── SIZE OF BUFFER             |        INPUT: DX = SEGMENT NUMBER FOR THE NEW PROGRAM    |
  179.                   OUTPUT: CHARACTERS UP TO AND INCLUDING A CR ARE       |       OUTPUT: NONE                                       |
  180.                           PLACED INTO THE BUFFER BEGINNING AT BYTE      |                                                          |
  181.                           3. BYTE 2 IS SET TO THE NUMBER OF CHARACTERS  |  AH = 27 - RANDOM BLOCK READ                             |
  182.                           PLACED INTO THE BUFFER.                       |        INPUT: DS:DX = POINTER TO AN OPENED FCB           |
  183.                                                                         |               CX = THE NUMBER OF RECORDS TO BE READ      |
  184.                AH = 0B - CHECK STANDARD INPUT STATUS                    |       OUTPUT: AL = 00 IF READ WAS SUCCESSFUL             |
  185.                    INPUT: NONE                                          |                    01 IF EOF (NO DATA READ)              |
  186.                   OUTPUT: AL = FF IF CHARACTER IS AVAILABLE; 00 IF NOT  |                    02 IF DTA IS TOO SMALL                |
  187.                                                                         |                    03 IF EOF (PARTIAL RECORD READ)       |
  188.                AH = 0C - CLEAR KEYBOARD BUFFER, INVOKE KEYBOARD FUNCTION|               CX = ACTUAL NUMBER OF RECORDS READ         |
  189.                    INPUT: AL = INT 21 FUNCTION # 01,06,07,08,OR 0A      |                                                          |
  190.                   OUTPUT: KEYBOARD IS CLEARED,FUNCTION IN AL IS INVOKED |  AH = 28 - RANDOM BLOCK WRITE                            |
  191.                                                                         |        INPUT: DS:DX = POINTER TO AN OPENED FCB           |
  192.                AH = 0D - DISK RESET                                     |               CX = NUMBER OF RECORDS TO BE WRITTEN       |
  193.                    INPUT: NONE                                          |       OUTPUT: AL = 00 IF WRITE WAS SUCCESSFUL            |
  194.                   OUTPUT: FLUSHES ALL FILE BUFFERS                      |                  = 01 IF DISKETTE IS FULL                |
  195.                                                                         |                  = 02 IF DTA IS TOO SMALL                |
  196.                AH = 0E - SELECT DISK                                    |               CX = ACTUAL NUMBER OF RECORDS WRITTEN      |
  197.                    INPUT: DL = DRIVE NUMBER (0=A,1=B,etc.)              |                                                          |
  198.                   OUTPUT: AL = TOTAL NUMBER OF DRIVES INCL. HARDFILES   |  AH = 29 - PARSE A FILENAME                              |
  199.                                                                         |        INPUT: DS:SI = POINTER TO A COMMAND LINE TO PARSE |
  200.                AH = 0F - OPEN A FILE                                    |               ES:DI = POINTER TO A BUFFER TO BE FILLED   |
  201.                    INPUT: DS:DX = POINTER TO AN UNOPENED FCB            |                       WITH AN UNOPENED FCB               |
  202.                   OUTPUT: AL = 00 IF FILE OPENED; AL = FF IF NOT        |               AL = BIT PATTERN TO CONTROL PARSING        |
  203.                                                                         |                    (SEE DOS MANUAL FOR BIT MEANINGS)     |
  204.                AH = 10 - CLOSE A FILE                                   |       OUTPUT: AL = 00 IF NO GLOBAL CHARACTERS            |
  205.                    INPUT: DS:DX = POINTER TO AN OPENED FCB              |                  = 01 IF GLOBAL CHARACTERS PRESENT       |
  206.                   OUTPUT: AL = 00 IF FILE IS FOUND; AL = FF IF NOT      |                  = FF IF DRIVE SPECIFIER IS INVALID      |
  207.                                                                         |               DS:SI = POINTER TO THE FIRST CHARACTER     |
  208.                AH = 11 - SEARCH FOR FIRST ENTRY                         |                       AFTER THE PARSED FILENAME          |
  209.                    INPUT: DS:DX = POINTER TO AN UNOPENED FCB            |               ES:DI = POINTER TO THE UNOPENED FCB        |
  210.                   OUTPUT: AL = 00 IF MATCHING FILENAME FOUND; FF IF NOT |                                                          |
  211.                                                                         |  AH = 2A - GET DATE                                      |
  212.                AH = 12 - SEARCH FOR NEXT ENTRY                          |        INPUT: NONE                                       |
  213.                    INPUT: DS:DX = POINTER TO SAME FCB IN AH=11 ABOVE    |       OUTPUT: AL = DAY OF THE WEEK (0=SUNDAY)            |
  214.                   OUTPUT: AL = 00 IF MATCHING FILENAME FOUND; FF IF NOT |               CX = YEAR (1980-2099)                      |
  215.                                                                         |               DH = MONTH (1-12)                          |
  216.                AH = 13 - DELETE A FILE                                  |               DL = DAY (1-31)                            |
  217.                    INPUT: DS:DX = POINTER TO AN UNOPENED FCB            |                                                          |
  218.                   OUTPUT: AL = 00 IF FILE DELETED                       |  AH = 2B - SET DATE                                      |
  219.                           AL = FF IF FILE NOT FOUND                     |        INPUT: CX = YEAR (1980-2099)                      |
  220.                                                                         |               DH = MONTH (1-12)                          |
  221.                AH = 14 - SEQUENTIAL READ                                |               DL = DAY (1-31)                            |
  222.                    INPUT: DS:DX = POINTER TO AN OPENED FCB              |       OUTPUT: AL = 00 IF DATE WAS VALID; AL=FF IF NOT    |
  223.                   OUTPUT: AL = 00 IF SUCCESSFUL READ                    |                                                          |
  224.                           AL = 01 IF END OF FILE (NO DATA READ)         |  AH = 2C - GET TIME                                      |
  225.                           AL = 02 IF DTA IS TOO SMALL                   |        INPUT: NONE                                       |
  226.                           AL = 03 IF END OF FILE (PARTIAL RECORD READ)  |       OUTPUT: CH = HOUR (0-23)                           |
  227.                                                                         |               CL = MINUTES (0-59)                        |
  228.                AH = 15 - SEQUENTIAL WRITE                               |               DH = SECONDS (0-59)                        |
  229.                    INPUT: DS:DX = POINTER TO AN OPENED FCB              |               DL = HUNDREDTHS (0-99)                     |
  230.                   OUTPUT: AL = 00 IF WRITE WAS SUCCESSFUL               |                                                          |
  231.                           AL = 01 IF DISKETTE IS FULL                   |  AH = 2D - SET TIME                                      |
  232.                           AL = 02 IF DTA IS TOO SMALL                   |        INPUT: CH = HOUR (0-23)                           |
  233.                                                                         |               CL = MINUTES (0-59)                        |
  234.                AH = 16 - CREATE A FILE                                  |               DH = SECONDS (0-59)                        |
  235.                    INPUT: DS:DX = POINTER TO AN UNOPENED FCB            |               DL = HUNDREDTHS (0-99)                     |
  236.                   OUTPUT: AL = 00 IF FILE CREATED; AL = FF IF NOT       |       OUTPUT: AL = 00 IF TIME WAS VALID; AL=FF IF NOT    |
  237.                                                                         |                                                          |
  238.                AH = 17 - RENAME A FILE                                  |  AH = 2E - SET/RESET VERIFY SWITCH                       |
  239.                    INPUT: DS:DX = POINTER TO A MODIFIED FCB             |        INPUT: AL = 01 TO SET VERIFY ON; AL=00 TO SET OFF |
  240.                   OUTPUT: AL = 00 IF FILE RENAMED; AL = FF IF NOT       |       OUTPUT: NONE                                       |
  241.                                                                         |                                                          |
  242.                                               CONTINUED ON NEXT PANEL   |                                CONTINUED ON NEXT PANEL   |
  243.                                                                         |                                                          |
  244.  
  245.